home *** CD-ROM | disk | FTP | other *** search
-
-
-
-
- Hiview 1.2
- A JPEG/GIF/TGA File Viewer
- By Mohammad A. REZAEI
- rezaei@upenn5.hep.upenn.edu
-
-
- INTRODUCTION
- Hiview is a freeware JPEG/GIF/TGA file viewer for video cards
- with the TSENG 4000, ATI, TRIDENT 8900, AHEADA/B, Chips&Tech, Everex, Genoa,
- Oak, Paradise,Tseng 3000, and Video 7 chipsets. The Hicolor mode on
- TSENG cards is supported. The viewer centers the image and scales it down
- to fit the screen, if necessary.
-
- Please note that only the following modes will be used (only these
- have square pixels!):
-
- 640x480x256
- 800x600x256
- 1024x768x256
- 640x480x32k (Tseng 4000 only)
- 800x600x32k (Tseng 4000 only)
-
- The hicolor modes are much faster and you can see something happening
- all the time. The 256 color modes must go through a quantization step
- where the screen is blanked and nothing is displayed.
-
- REQUIREMENTS
- o 386 computer.
- o A video card with one the chipsets mentioned above.
- o VCPI environemnt
- (i.e., the code won't work under MS Windows or OS/2)
-
- If you would like to compile the code yourself, you will additionally require:
- o djgpp (actually no C++ extensions necessary)
- o Source code from version 3 of the Independent JPEG group
- o The LIBGRX extensions to djgpp.
- The JPEG source is available in many archives (wuacrvhie.wustl.edu,
- simtel, etc.). djgpp and LIBGRX are available from barnacle.erc.clarkson.edu.
-
-
- SETUP FOR THE VIEWER
- As the code is compiled with djgcc, you need to set two environment
- variables: GO32 and GO32TMP. GO32 lets go32 (the dj extender) know what
- graphics driver to use, and GO32TMP is the place you would like the
- temporary files to go (go32 swap directory). PLEASE NOTE: all directory
- slashes must be forward slashes (ala UNIX) not back slashes.
- For example, my settings are:
-
- SET GO32TMP=c:/tmp
- SET GO32=ansi driver c:/djgcc/contrib/libgrx/drivers/et4000.grn
-
- If you don't setup these variables properly, the code will crash and burn!
- In addition, if you don't have a 387, you need to add
-
- emu <emu387 location>
- to the GO32 environment variable,
- where <emu387 location> is where you put the emu387 file.
-
- For example, if you unpacked everything in c:\graphics, and you have
- a paradise video card with no 387, you would do:
-
- SET GO32=ansi driver c:/graphics/paradise.grd emu c:/graphics/emu387
-
- Please do not add any extra spaces to the above.
-
-
- After this setup, you can run hiview. It will look in the current directory
- for files matching *.jpg, *.gif and *.tga.
-
- TROUBLESHOOTING
- There have also been reports about some incompatibilities with himem/emm386.
- Try removing these from your config.sys and rerun hiview, if you experience
- any segmetation faults. I recommend using QEMM or 386MAX as a memory manager.
-
- Make sure you have setup the environment variables properly. Use "/" in
- the directory names, not "\".
-
-
- COMMAND LINE OPTIONS
- With no command line options, hiview will look in the current directory
- for files matching *.jpg, *.gif and *.tga.
- You can include file specifications on the command line. The viewer expects
- that the file extension specify the file type, but you can override this with
- the -j, -g and -t flags for JPEG, GIF and TARGA respectively.
- So, if for some reason you have a file called "pic.jpg" which is actually
- a GIF file, you can view it with "hiview -g pic.jpg".
- Please note that any file specification appearing after these flags will
- be expected to be of that type, so "hiview -g pic1.gif pic2.tga" will think
- pic2.tga is a GIF file. To get the correct result, you can use
- "hiview pic2.tga -g pic1.gif" or "hiview -g pic1.gif -t pic2.tga".
-
- The following flags toggle the desired effect:
-
- -h Hicolor mode, default is on.
- -b Block smoothing, default is off.
- -p Pixel smoothing, default is off.
- -s <gamma> Gamma specification, default is 1.0, values between 0.1 and 2.0
- are usually used.
- -i Linear interpolation, default is on. (24->15 bit only)
- This helps alot if the scaling ratio (image/screen) is between
- 1 and 2. It doesn't help much if scaling ratio is above 2
- -d Floyd-Steinberg dithering, default is off for 15 bit and on for 8 bit
- displays modes. Helps significantly with some images with smooth
- shaded regions.
- -w Start slide show of available files. Waits for key press between
- images.
- -W <time in seconds> Start slide show of images, and wait specified time
- between images.
- -q 24->8 bit quatization, one pass or two pass, default is one pass.
- -T Measure how long it took to display the image.
-
- All the above can be changed interactively from the menus.
-
- USING HIVIEW INTERACTIVELY
- Once the filenames are displayed, you can use the arrow keys
- to choose the file to be displayed. Pressing "O" gets you to the options
- menu.
- You can also select several images to be shown one after another.
- Pressing SPACE select/deselect images. Images are displayed in order listed
- (not selected). After selecting the images, press RETURN to start the slide
- show. Unless you have specified otherwise (through the command line or
- options menu) the program will wait for a keypress between images.
-
- COPYRIGHTS AND SUCH
- The source code for the viewer is included with the distribution.
- I have written most of the code in viewer.c, which is based on example.c of
- the JPEG distribution. This code is distributed with the same intentions and
- policies as the Independent JPEG group software. However, please note the
- copyrights and distribution policies of the portion of the code that is
- from any other source. This includes the djgpp stuff (the prepended
- go32 to hiview.exe, the 387 emulator), the LIBGRX drivers and the JPEG
- files distributed with the code. So please read COPYING and COPYING.DJ,
- COPYING.GRX and README.IJG.
-
- DESIGN INTENTIONS
- The code is intended to be as fast as possible with a user
- friendly interface and lots of options. Admitedly, the code is rather
- ugly in this initial release.
-
- I strongly encourage additions and modifications to my code.
- However, to keep the distribution uniform, I would like to be the sole
- distributor of the viewer "hiview". So please send me your suggestions, and
- modifications. I can be reached as rezaei@upenn5.hep.upenn.edu until
- August 15, 1992. (I will have a different address after that.) If you intend
- to do any modifications, please read todo.doc.
-
- BUGS AND LIMITATIONS
- The viewer can't deal with a directory as a command line parameter.
- It can however deal with wildcards, so "hiview \pics" won't work, whereas
- "hiview \pics\*.jpg" will. Same is true for drive names: "hiview a:" is
- not supported, but "hiview a:*.*" is.
-
- The viewer cannot handle files larger than 4096x4096, but this
- can be easily changed by recompiling.
-
- You cannot display TARGA files in 8 bit mode (yet). Trying this
- will result in strange behaviour.
-
- Colormaped TARGA files are not supported.
-
- The ATI and TRIDENT modes are untested.
-
- Please see the todo.doc file for planned solutions to the above and
- improvements to be incorporated into the next release of the program.
-
- -T option does not work well in slide show mode.
-
- HISTORY
-
- 7/6/92 version 1.0, initial release. Special thanks go to Bruce (bs@mda.ca)
- 7/7/92 version 1.1, now two executables, hiview.exe and jview.exe exist
- hiview handles Tseng 4000, Ati and Trident 8900 chipsets.
- jview handles the rest. Eventually, only hiview should exist.
- On setups with no 387, there should be a significant speedup.
- modified files: makefile.*
- viewer.h
- viewer.c
- hiview.exe
- hiview.doc
- todo.doc
- new files: jview.exe
- *.grd (old graphics drivers)
- src/mkjview.lst
- 7/22/92 version 1.2. jview.exe no longer exists. hiview can use all cards.
- this version is 10-20% faster than 1.1. It also eliminates the
- initialization delays on machines with no 387. There is a primitive
- slide show mode, and you can view pictures from the command line
- (-w and -W switches). There is a 486-optimized executable: hiview4.exe
- which is about 5% faster than it's 386 cousin on a 486. It will
- actually run on a 386, but slower. Dithering is now a global option
- (and faster). -T option will show how long it took for an image
- to display.
- modified files:
- makefile
- makefile.opt
- mkhiview.lst
- viewer.c
- viewer.h
- dither.c
- hiview.exe
- hiview.doc
- readme.txt
- todo.doc
- new files:
- range.c
- jquant1.c
- jquant2.c
- makefile.486
- hiview4.exe
- jdcolor.c
- jdmcu.c
- rangecalc.c
- mypow.c
- mypow.h
- logcalc.c
- jversion.h
- jconfig.h
-